home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / var / lib / dpkg / info / hal.preinst < prev    next >
Encoding:
Text File  |  2007-03-30  |  2.1 KB  |  74 lines

  1. #!/bin/sh
  2.  
  3. set -e
  4.  
  5. rm_conffile() {
  6.   CONFFILE="$1"
  7.   if [ -e "$CONFFILE" ]; then
  8.    md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`"
  9.    old_md5sum="`sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $CONFFILE'{s/.* //;p}}\" /var/lib/dpkg/status`"
  10.    if [ "$md5sum" != "$old_md5sum" ]; then
  11.      echo "Obsolete conffile $CONFFILE has been modified by you."
  12.      echo "Saving as $CONFFILE.dpkg-bak ..."
  13.      mv -f "$CONFFILE" "$CONFFILE".bak
  14.    else
  15.      echo "Removing obsolete conffile $CONFFILE ..."
  16.      rm -f "$CONFFILE"
  17.    fi
  18.  fi
  19. }
  20.  
  21. mv_conffile() {
  22.   OLD="$1"
  23.   NEW="$2"
  24.   if [ -e "$OLD" ]; then
  25.       md5sum="`md5sum \"$OLD\" | sed -e \"s/ .*//\"`"
  26.       old_md5sum="`dpkg -s dhcdbd | sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $OLD'{s/.* //;p}}\"`"
  27.       if [ "$md5sum" = "$old_md5sum" ]; then
  28.           mv -f "$OLD" "$OLD.moved-by-preinst"
  29.       else
  30.           mv -f "$OLD" "$NEW"
  31.       fi
  32.   fi
  33. }
  34.  
  35. case "$1" in
  36. install|upgrade)
  37.     if dpkg --compare-versions "$2" le "0.5.2-1"; then
  38.         rm_conffile "/etc/hal/fdi/preferences.fdi"
  39.         rm_conffile "/etc/dev.d/block/hal-unmount.dev"
  40.     fi
  41.     if dpkg --compare-versions "$2" le "0.5.6-2"; then
  42.         rm_conffile "/etc/udev/scripts/device-removable.sh" 
  43.     fi
  44.     if dpkg --compare-versions "$2" le "0.5.6-4"; then
  45.         rm_conffile "/etc/hal/fdi/preferences.fdi"
  46.     fi
  47.     if dpkg --compare-versions "$2" le "0.5.7-2"; then
  48.         rm_conffile "/etc/udev/rules.d/90-hal.rules"
  49.     fi
  50.     if dpkg --compare-versions "$2" le "0.5.7.1-1"; then
  51.        deluser --quiet --system hal > /dev/null || true
  52.     fi
  53.     if dpkg --compare-versions "$2" le "0.5.8.1-3ubuntu7"; then
  54.        mv_conffile /etc/udev/rules.d/85-hal.rules /etc/udev/rules.d/95-hal.rules
  55.     fi
  56. esac
  57.  
  58.  
  59. if [ "$1" = "upgrade" ]; then
  60.   if [ -x /etc/dbus-1/event.d/20hal ]; then
  61.     /etc/dbus-1/event.d/20hal stop
  62.   else 
  63.     # Really old version of hal have the dbus init script in another location
  64.     # Fallback to manual..
  65.     start-stop-daemon --quiet --stop --oknodo --exec /usr/sbin/hald
  66.   fi
  67. fi
  68.  
  69. if [ -f /etc/dbus-1/event.d/hal ]; then
  70.     mv /etc/dbus-1/event.d/hal /etc/dbus-1/event.d/20hal
  71. fi
  72.  
  73.  
  74.